package config

import (
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
	"github.com/aws/aws-sdk-go/service/s3/s3manager"
)

type S3Config struct {
	Domain     string `mapstructure:"domain" json:"domain" yaml:"domain"`
	AccessKey  string `mapstructure:"access_key" json:"access_key" yaml:"access_key"`
	SecretKey  string `mapstructure:"secret_key" json:"secret_key" yaml:"secret_key"`
	BucketName string `mapstructure:"bucket_name" json:"bucket_name" yaml:"bucket_name"`
	FileDir    string `mapstructure:"dir" json:"dir" yaml:"dir"`
}

type S3 struct {
	Svc        *s3.S3
	Uploader   *s3manager.Uploader
	Downloader *s3manager.Downloader
	Session    *session.Session
}
